diff --git a/src/account.h b/src/account.h
index 76e839e..0b55ce9 100644
--- a/src/account.h
+++ b/src/account.h
@@ -261,11 +261,7 @@ public:
   mutable optional<xdata_t> xdata_;
 
   bool has_xdata() const {
-#if BOOST_VERSION >= 105600
-    return xdata_ != NULL;
-#else
-    return xdata_;
-#endif
+      return !!(xdata_);
   }
   void clear_xdata();
   xdata_t& xdata() {
diff --git a/src/filters.cc b/src/filters.cc
index 2f97a0e..b6530c0 100644
--- a/src/filters.cc
+++ b/src/filters.cc
@@ -707,7 +707,7 @@ namespace {
     insert_prices_in_map(price_map_t& _all_prices)
       : all_prices(_all_prices) {}
 
-    void operator()(datetime_t& date, const amount_t& price) {
+    void operator()(const datetime_t& date, const amount_t& price) {
       all_prices.insert(price_map_t::value_type(date, price));
     }
   };
diff --git a/src/item.h b/src/item.h
index 458cb37..aa55e41 100644
--- a/src/item.h
+++ b/src/item.h
@@ -191,11 +191,7 @@ public:
   static bool use_aux_date;
 
   virtual bool has_date() const {
-#if BOOST_VERSION >= 105600
-    return _date != NULL;
-#else
-    return _date;
-#endif
+      return !!(_date);
   }
 
   virtual date_t date() const {
diff --git a/src/iterators.cc b/src/iterators.cc
index 21bec5d..0225e21 100644
--- a/src/iterators.cc
+++ b/src/iterators.cc
@@ -96,7 +96,7 @@ namespace {
       TRACE_DTOR(create_price_xact);
     }
 
-    void operator()(datetime_t& date, const amount_t& price) {
+    void operator()(const datetime_t& date, const amount_t& price) {
       xact_t * xact;
       string   symbol = price.commodity().symbol();
 
diff --git a/src/parser.h b/src/parser.h
index e46fc71..25c4a7e 100644
--- a/src/parser.h
+++ b/src/parser.h
@@ -118,7 +118,7 @@ public:
 
   ptr_op_t parse(std::istream&           in,
                  const parse_flags_t&    flags           = PARSE_DEFAULT,
-                 const optional<string>& original_string = NULL);
+                 const optional<string>& original_string = boost::none);
 };
 
 } // namespace ledger
diff --git a/src/post.h b/src/post.h
index 1e5fc56..7796293 100644
--- a/src/post.h
+++ b/src/post.h
@@ -205,11 +205,7 @@ public:
   mutable optional<xdata_t> xdata_;
 
   bool has_xdata() const {
-#if BOOST_VERSION >= 105600
-    return xdata_ != NULL;
-#else
-    return xdata_;
-#endif
+      return !!(xdata_);
   }
   void clear_xdata() {
     xdata_ = none;
diff --git a/src/times.h b/src/times.h
index c1bfb1c..0cb05ff 100644
--- a/src/times.h
+++ b/src/times.h
@@ -568,11 +568,7 @@ public:
   void   stabilize(const optional<date_t>& date = none);
 
   bool   is_valid() const {
-#if BOOST_VERSION >= 105600
-    return start != NULL;
-#else
-    return start;
-#endif
+      return !!(start);
   }
